-
Session Bean trong EJB 2.1 – Cài đặt ứng dụng Shopping Cart sử dụng Stateful
-
Security trong EJB 3
-
Security trong EJB 2.1
-
Transaction trong EJB 3.0 – cài đặt và vận dụng các khái niệm transaction trên EJB 3.0
-
Transaction trong EJB 2.1
-
Entity Bean với khóa chính tự tăng – identity trong EJB 3.0
-
CMP với khóa chính tự tăng – Container Managed Persistent Bean với identity trong EJB 2.1
-
CMR m:n - Quan hệ nhiều:nhiều giữa 02 objects trong EJB 3.0
-
CMR 1:n - Quan hệ 1:n giữa 02 objects trong EJB 3.0
-
CMR 1:1 - Quan hệ 1:1 giữa 02 objects trong EJB 3.0
-
Entity Bean trong EJB 3.0 - vận dụng và cài đặt
-
CMP - Container Managed Bean trong EJB 2.1
-
Entity Bean trong EJB 2.1
-
CMR many: many – Quan hệ n:m giữa 02 object trong EJB 2.1
-
CMR one: many – Quan hệ 1:n giữa 02 object trong EJB 2.1
-
CMR one: one – Quan hệ 1:1 giữa 02 object trong EJB 2.1
-
CMR – Container Managed Relationships trong EJB 2.1
AXIS2 - OBJECT VÀ MẢNG OBJECT
- Details
- Category: Java Web Service
- Hits: 3444
TẠO WEBSERVICES VỚI AXIS2 ÁP DỤNG TRÊN KIỂU DỮ LIỆU TRẢ VỀ LÀ KIỀU OBJECT VÀ MẢNG OBJECT. THỰC HIỆN CONSUME AXIS2 WEBSERVICE SỬ DỤNG JAX-WS. TẤT CẢ ĐỀU SỬ DỤNG NETBEANS 6.9.1 KẾT HỢP TOMCAT 6.0.26
Mục đích bài này đòi hỏi chúng ta phải nắm vững các nội dung liên quan đến cài đặt axis2, cách làm webservice đơn giản sử dụng axis2
Bài này mô tả xây dựng ứng dụng website để tìm kiếm tên gần đúng của các account được lưu trữ trên DB. Người dùng đơn giản nhập 1 ký tự bất kỳ và họ sẽ nhận được danh sách thông tin account trên browser (Ở đây, tôi sẽ sử dụng SQL Server 2005)
Cấu trúc của table tên là Register như sau
|
Tên cột |
Kiểu dữ liệu |
|
Username |
Varchar(20) |
|
Password |
Varchar(20) |
|
Lastname |
Varchar(50) |
|
isAdmin |
Bit (1 : admin) |
- Áp dụng cách tạo Axis2 Webservice trong đơn giản để thực hiện các bước sau
o Tạo Java Application tên ObjectAxis2
o Tạo JavaBean hay POJO có tên AccountDTO chứa các property như cấu trúc bảng và thiết lập đầy đủ getter và setter cho object này (lưu ý class cài đặt phải có package - ở đây tôi vẫn lấy tên sample.axis2)
§ Bắt buộc phải có 1 constructor không có tham số (default constructor)

800x600 Normal 0 false false false EN-US X-NONE X-NONE MicrosoftInternetExplorer4
o Tạo Axis2 Webservice tên searchLikeLastname trả về 1 mảng array của object như sau


o Build, deploy và testing WebServices

o Lưu ý: dữ liệu object sẽ được convert thành dạng xml (marshalling) để sau này ở phía client – consume sẽ convert lại ban đầu (unmarshalling) để sử dụng. Có chế được hỗ trợ bởi JAXB. Khung đỏ trong hình trên cho thấy điều đó
o Trên browse, chọn menu File, save as để lưu file này dạng wsdl để sử dụng trong việc chỉnh sửa để tạo ra object ở phía client. NetBeans 6.9.1 có 1 thiếu sót vẫn chưa hoàn chỉnh. Ở đây tôi sẽ lưu file tên ObjectArrayService.wsdl
o Testing

o Kết thúc bước này chúng ta đã hoàn tất việc tạo Axis2 Webservice với Object
- Tạo Consume Webservice với JAX-WS trên netbeans 6.9.1 với Tomcat, sử dụng mô hình MVC
o Tạo Web Application deploy trên Tomcat – sử dụng JavaEE5.
o Mở tập tin wsdl đã lưu ở trên bằng trình soạn thảo bất kỳ mà có thể chỉnh sửa dễ dàng, tìm kiếm tên class object của chúng ta (ở đây tên là AccountDTO), chỉnh sửa các giá trị của minOccurs từ 0 thành 1 để giúp JAX-WS convert complex type thành loại dữ liệu cụ thể phía client (Nếu vẫn để 0 thì dữ liệu object được convert ở client sẽ là JAXBELement<kiểu dữ liệu> - rất khó để sử dụng)

Trước khi chỉnh sửa

Sau khi chỉnh sửa
o Phát sinh WebService Client, chọn option local file, browse đến tập tin wsdl vừa mới chỉnh sửa, nhập package

o Nhấn Finish và chờ cho hoàn tất việc phát sinh client

o Tạo giao diện để consume

o Tạo controller để xử lý theo MVC
§ Kéo hàm service vào code Controller
§ Lấy kết quả và truyền sang trang show để trình bày kết quả

o Tạo trang show.jsp để trình bày dữ liệu
§ Lưu ý, sử dụng JSTL để trình bày dữ liệu (Add thư viện JSTL 1.1 vào project)


o Build, deploy và testing project


o Chúc mừng bạn đã hoàn tất việc tạo Axis2 Service và sử dụng nó với dạng Object, dạng chuẩn chung để có thể sử dụng liên thông giữa các ngôn ngữ lập trình, công nghệ lập trình và hệ điều hành
o Hẹn gặp lại ở những chủ đề khác, rất mong đóng góp ý kiến


Cảm ơn vì bài viết rất hay và hữu dụng của bạn.
Bạn cho mình hỏi thêm khi mình start server của tomcat thì nhận được thông báo "starting of tomcat failed the server port 8084 is already in use netbeans" . mình cũng đã tăng port server lên rồi nhưng vẫn nhận được thông báo như vậy . tìm hiểu trên internet thấy có 1 vài người hướng dẫn sử dụng command taskkill trong cmd nhưng mà mình lại không biết PID của port netbean là gì . bạn có thể giúp mình được không ?
Cám ơn bạn. Mong nhận được mail bạn sớm
KHẮC PHỤC: PORT BỊ CHIẾM KHÔNG THỂ KHỞI ĐỘNG ĐƯỢC CÁC LOẠI SERVER J2EE/JAVAEE:
http://kieutrongkhanh.net/index.php/problem-solution/6-khac-phuc-port-window